// 变量与常量
package main

import "fmt"

// 声明变量
// var name string
// var age int
// var isOk bool

// 批量声明
var (
	name string // ""
	age  int    // 0
	isOk bool   // false
)

// Go 语言中推荐使用驼峰式命名
// 推荐小驼峰式命名
// var student_name string
// var studentName string
// var StudentName string

func main() {
	fmt.Println("变量")
	// 初始化变量
	name = "lixiang"
	age = 16
	isOk = true
	// 在 go语言中变量声明必须使用，否则无法编译通过
	fmt.Printf("name: %s", name) // %s 占位符 使用name替换 %s
	fmt.Println()
	fmt.Println(age) // Println 打印完了会增加一个换行符
	fmt.Println(isOk)
	// 声明变量同时赋值
	var s1 string = "web"
	fmt.Println(s1)

	// 类型推导
	var userName = "go"
	fmt.Println(userName)

	// 短变量声明
	// 在函数内部使用:= 来声明并初始化变量
	// 只能在函数内使用
	n := "name"
	fmt.Println(n)
}
